// 导入vue
import Vue from 'vue'
// 导入根组件
import App from './App.vue'
// 导入路由:省略了index.js
import router from './router/index.js'

// 导入element-ui
// 1. 会到modeules/element-ui中找到package.json中的main指定的路径
//

import ElementUI from 'element-ui'
import 'element-ui/lib/theme-chalk/index.css'

// 导入axios
import axios from '@/utils/request.js'
import MyBreadcrumb from '@/components/myBreadcrumb.vue'
import MyChannel from '@/components/myChannel.vue'
import MyCover from '@/components/myCover.vue'
// a.js中的导出是按需导出
// import { abc, f } from './modules/a.js'
// import { abc, f } from './modules/b.js'
// import obj, { name, f } from './modules/c.js'
// import o from './modules/d.js'
// console.log(obj.age, name, f, o)
// import abc from './modules/b.js'
// console.log(abc)
// 不采用开发提示。
// 在开发阶段时，会有一些提示信息
Vue.config.productionTip = false

// 以Vue插件的格式使用element-ui
Vue.use(ElementUI)
// 实例化一个Vue对象
// new Vue({
//   el: '#app',
//   data: {},
//   methods,
//   ....
// })

// 在Vue的原型对象上添加一个名为$axios的属性
// 这样，在所有的vue组件中都可以通过this.$axios的方式来访问

// $axios: 名字前加$，潜规则
Vue.prototype.$axios = axios

// eventBus
Vue.prototype.$eventBus = new Vue()

// 全局组件的格式
// Vue.component('组件名', {
//   // 组件对象
// })

// 注册全局组件
Vue.component('MyCom', {
  render: (h) => h('h1', 'mycom')
})
Vue.component('MyChannel', MyChannel)
Vue.component('MyBreadcrumb', MyBreadcrumb)
Vue.component('MyCover', MyCover)

// eslint-disable-next-line no-new
new Vue({
  // el: '#app',
  router, // 路由
  render: h => h(App) // 自定义渲染函数：用根组件App来实例化vue对象
}).$mount('#app')

// new Vue()产生一个vue实例
// .$mount('#app') 把这个实例挂载到一个名为#app的dom上。这个文件就是public/index.html
